define(["jquery","template","bbcare",
	"bch/app/patientManager/user.servers",
	"bch/template/patientManager/user.tpl"],
	function($,template,$bb,$servers,tpl){
	var ui = {};

	var drawNodes = function(data){
		return template("tpl_user_nodes",data);
	}
	var drawTasks = function(data){
		return template("tpl_user_tasks",data);
	}
	var drawDates = function(data){
		return template("tpl_user_dates",data);
	}
	var drawEditDateWrap = function(data){
		return template("tpl_user_editDateWrap",data);
	}
	var drawEditDate = function(data){
		return template("tpl_user_editDate",data);
	}
	var drawEditWrap = function(data){
		return template("tpl_user_editWrap",data);
	}
	var drawQuestWrap = function(data){
		return template("tpl_user_questWrap",data);
	}
	var drawBaseInfo = function(data){
		return template("tpl_user_baseInfo",data);
	}
	/* 节点 */
	ui.nodes = function(options){
		$("#"+options.id).html(tpl.nodes());
		var h = drawNodes($servers.handleNodes(options.list));
		$("#"+options.id).html(h);
	}
	/* 任务 */
	ui.tasks = function(options){
		$("#"+options.id).html(tpl.tasks());
		var h = drawTasks($servers.handleTasks(options));
		$("#"+options.id).html(h);
	}
	/* 各种日期 */
	ui.dates = function(options){
		$("#"+options.id).html(tpl.dates());
		var h = drawDates($servers.handleDates(options.data));
		$("#"+options.id).html(h);
	}
	ui.editDateWrap = function(options){
		options.dom.html(tpl.editDateWrap());
		var h = drawEditDateWrap();
		options.dom.html(h);
	}
	/* 修改日期 */
	ui.editDate = function(options){
		$("#"+options.id).html(tpl.editDate());
		var h = drawEditDate(options);
		$("#"+options.id).html(h);
	}
	/* 点击编辑框弹出的模态框 */
	ui.editWrap = function(options){
		options.dom.html(tpl.editWrap());
		var h = drawEditWrap(options);
		options.dom.html(h);
	}
	/* 问卷的外包裹 */
	ui.questWrap = function(options){
		options.dom.html(tpl.questWrap());
		var h = drawQuestWrap(options);
		options.dom.html(h);
	}
	/* 基本信息 */
	ui.baseInfo = function(options){
		$("#"+options.id).html(tpl.baseInfo());
		var h = drawBaseInfo($servers.handleBaseInfo(options.data));
		$("#"+options.id).html(h);
	}

	return ui;
});